<?php



class BeatMapBuilder {

	
	const CLASS_NAME = 'lib.model.map.BeatMapBuilder';

	
	private $dbMap;

	
	public function isBuilt()
	{
		return ($this->dbMap !== null);
	}

	
	public function getDatabaseMap()
	{
		return $this->dbMap;
	}

	
	public function doBuild()
	{
		$this->dbMap = Propel::getDatabaseMap('propel');

		$tMap = $this->dbMap->addTable('beat');
		$tMap->setPhpName('Beat');

		$tMap->setUseIdGenerator(true);

		$tMap->addPrimaryKey('ID', 'Id', 'int', CreoleTypes::INTEGER, true, null);

		$tMap->addColumn('BEAT_NAME', 'BeatName', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('KARAOKE_FILE_PATH', 'KaraokeFilePath', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('LYRIC_FILE_PATH', 'LyricFilePath', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('ARTIST', 'Artist', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('COMPOSER', 'Composer', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('ALBUM', 'Album', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('TRACK_NO', 'TrackNo', 'int', CreoleTypes::INTEGER, false, null);

		$tMap->addColumn('GENRE', 'Genre', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('GENRE_ID', 'GenreId', 'int', CreoleTypes::INTEGER, false, null);

		$tMap->addColumn('LYRICS', 'Lyrics', 'string', CreoleTypes::VARCHAR, false, 5000);

		$tMap->addColumn('BITRATE', 'Bitrate', 'int', CreoleTypes::INTEGER, false, null);

		$tMap->addColumn('DURATION', 'Duration', 'int', CreoleTypes::INTEGER, false, null);

		$tMap->addColumn('BEAT_FORMAT', 'BeatFormat', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('RECORD', 'Record', 'int', CreoleTypes::INTEGER, false, null);

		$tMap->addColumn('CREATED_DATETIME', 'CreatedDatetime', 'int', CreoleTypes::TIMESTAMP, false, null);

		$tMap->addColumn('TYPE', 'Type', 'int', CreoleTypes::TINYINT, false, null);

		$tMap->addColumn('IVR_FILE_PATH', 'IvrFilePath', 'string', CreoleTypes::VARCHAR, false, 255);

		$tMap->addColumn('IVR_STATUS', 'IvrStatus', 'int', CreoleTypes::TINYINT, false, null);

		$tMap->addColumn('IS_HOT', 'IsHot', 'int', CreoleTypes::TIMESTAMP, false, null);

		$tMap->addColumn('HIDE_STATUS', 'HideStatus', 'int', CreoleTypes::TINYINT, false, null);

	} 
} 